﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MvcEngine.Core
{
    public class CaptchaConsts
    {
        protected CaptchaConsts()
        {
        }

        public const string DefaultName = "captcha";
        public const string KeyName = "captchaKey";
    }

    public class PermissionTypes
    {
        protected PermissionTypes()
        {
        }

        public const string View = "VIEW";
        public const string Edit = "EDIT";
    }

    public class CacheKey
    {
        protected CacheKey()
        {
        }

        public class WebsiteKeys
        {
            protected WebsiteKeys()
            {
            }
            public const string WebsiteId = "WebsiteId_{0}";
            public const string WebsiteDomain = "WebsiteName_{0}";
            public const string WebsiteAll = "WebsiteAll";
            public const string WebsiteCategory = "WebsiteCategory";

            public const string SkinAll = "SkinAll";
            public const string SkinId = "SkinId_{0}";
            public const string SkinCategory = "SkinCategory";

            public const string SkinTemplateId = "SkinTemplateId_{0}";
            public const string SkinDefaultTemplateId = "SkinDefaultTemplateId_{0}";
            public const string SkinTemplatesBySkinId = "SkinTemplateId_{0}";
            public const string SkinTemplateCategory = "SkinTemplateCategory";

            public const string Menu = "Menu_{0}";
        }

        public class AccountKeys
        {
            protected AccountKeys()
            {
            }
            public const string UserCategory = "UserCategory";
            public const string UserId = "UserId_{0}";
            public const string UserPaging = "UserPaging_{0}_{1}_{2}";
            public const string UserName = "UserName_{0}_{1}";

            public const string RoleCategory = "RoleCategory";
            public const string RoleId = "RoleId_{0}";
            public const string RoleName = "RoleName_{0}_{1}";
            public const string RoleUnregisteredUsers = "RoleUnregisteredUsers_{0}";

            public const string UserRoles = "UserRoles_{0}_{1}";
            public const string UserRolesCategory = "UserRolesCategory";
        }

        public class ContentKeys
        {
            protected ContentKeys()
            {
            }
            public const string PageCategory = "PageCategory";
            public const string PageId = "PageId_{0}";
            public const string PageAll = "PageAll_{0}";
            public const string PageAllVisible = "PageAllVisible_{0}_{1}";
            public const string PageName = "PageName_{0}_{1}";

            public const string PageContentCategory = "PageContentCategory_{0}";
            public const string PageContentId = "PageContentId_{0}";
            public const string PageContentIdByPage = "PageContentByPageId_{0}";
            public const string PageContentDetailsByPage = "PageContentDetailsByPage_{0}";
            public const string PageContentDetailsByControl = "PageContentDetailsByPage_{0}_{1}";
            

            public const string ControlCategory = "ControlCategory";
            public const string ControlId = "ControlId_{0}";
            public const string ControlAll = "ControlAll";
            public const string ControlsByModule = "ControlsByModule_{0}";
            public const string ControlKey = "ControlKey_{0}";

            public const string ContainerCategory = "ContainerCategory";
            public const string ContainerAll = "ContainerAll_{0}";
            public const string ContainerId = "ContainerId_{0}_{1}";
            public const string ContainerMarkupId = "ContainerMarkupId_{0}_{1}";

            public const string ModuleCategory = "ModuleCategory";
            public const string ModuleAll = "ModuleAll";
            public const string ModuleInstallableAll = "ModuleInstallableAll_{0}";
            public const string ModuleId = "ModuleId_{0}";

        }

        public class CommonKeys
        {
            protected CommonKeys()
            {
            }
            public const string LogId = "LogId_{0}";
            public const string LogPage = "LogPage_{0}_{1}_{2}";
            public const string LogAll = "LogAll";
            public const string LogCategory = "LogCategory";
        }
    }
}
